#include "BoonException.h"
#include <sstream>

using namespace Boon;



Boon::BoonException::BoonException( const char* Classname, const char* FunctionName, const char* Msg )
	: m_Class( Classname ), m_Function( FunctionName ), m_Msg( Msg )
{

}

const std::string Boon::BoonException::What() const
{
	std::stringstream ss;
	ss << m_Class << ":" << m_Function << ": Exceptionmsg: " << m_Msg;
	return ss.str();
}

const std::string Boon::BoonException::Class() const
{
	return std::string( m_Class );
}

const std::string Boon::BoonException::Function() const
{
	return std::string( m_Function );
}

std::ostream& operator<<(std::ostream& out, const Boon::BoonException& obj )
{
	out << obj.What();
	return out;
}